import React from 'react';
import { connect } from 'umi';
// 装饰器必须是一个函数
// 装饰器装饰的是类
// 装饰器与类之间不要换行
// 装饰器浏览器默认不支持，需要通过babel转译
function Dec(args) {
  return function (Class) {
    // console.log('Dec');
    //   console.log('args', args);
    Class.name1 = args;
    Class.prototype.fn = '我其实不是一个函数';
    Class.fn = () => {
      console.log('我是一个静态方法');
    };
  };
}
function Dec1(Class) {
  //   console.log('Dec1');
  Class.name2 = '我是黑马程序员';
}
//执行顺序： 由近到远执行
@Dec1
@Dec('我是参数') //Dec(App);
class App {}

// console.log(App.name1);
// console.log(new App().fn);
// App.fn();
// console.log(App.name2);

@connect((state) => {
  return { ...state };
})
export default class Test extends React.Component {
  render() {
    return <div>Test</div>;
  }
}
// export default connect((state) => {
//   console.log(state);
//   return { ...state };
// })(Test);
